1. Field of the Invention
The present invention relates to a method, system, for program superimposing graphics from different application programs.
2. Description of the Related Art
In prior art windows operating systems environments, graphics (e.g., text and images) from two application programs may be displayed simultaneously on the screen. However, the information from the different applications is typically displayed in separate graphical windows that overlap. FIG. 1 illustrates prior art methods for displaying information from one application program while another application program is displaying a graphical user interface (GUI) window. In FIG. 1, a display monitor 2 is displaying a graphical window 4 for an application program. While the window 4 is being displayed, another application program displays information, such as a message in a dialog box or separate graphical window 6. For instance, application programs displaying information such as an e-mail notification or stock ticker typically display information in a separate graphical window, such as the window 6 shown in FIG. 2.
This prior art technique for displaying information while other application windows are being displayed could interfere with the current window in which the user is working. The display of window 6 may block the user""s view of the application window 4 in which the user is working and block the user""s direct access to portions of the application window 4 covered by the information window 6. In such case, the user would have to either close or drag and drop the information window 6 to another location on the screen to access areas of the application window 4 currently blocked by the displayed information window 6. For instance, a pop-up display of the information window 6 could cover the very region of the application window 4 the user is currently accessing.
Thus, there is a need in the art for an improved method, system, and program for displaying information from one program while another program is displaying information on the monitor.
To overcome the limitations in the prior art described above, preferred embodiments disclose a system, method, and program for displaying data. A program receives first input graphics commands from a first application program to display first output on a display monitor and second input graphics commands from a second application program to display second output on the display monitor. The second output is graphically blended with an overlapping portion of the first output. Output graphics commands are generated from the first and second input graphics commands to display the graphically blended second output superimposed over an overlapping portion of the first output and the first output non-overlapping with the second output.
In further embodiments, the generated output graphics commands are device independent graphics commands. The output graphics commands are sent to a display driver. The display driver generates device dependent display commands from the output graphics commands to control the monitor.
In still further embodiments, a blending algorithm is executed to superimpose the second output with the overlapping portion of the first output, wherein the second output is displayed as a transparency over the first output such that content of the first output is visible through the displayed second output on the display monitor.
Still further, the output graphics commands cause the display of the second output superimposed over an overlapping portion of the first output and the first output non-overlapping with the second output in a single graphical window. The first output overlapping with the second output may be directly accessible to a user through the graphical window.
Preferred embodiments provide a method, system, and program for displaying content from a secondary application over the content displayed for a primary application program in a manner that does not interfere with the user""s interaction with the displayed primary application program. Preferred embodiments blend the content from the secondary application, i.e., secondary output, with the overlapping content from the primary application, i.e., primary output, to superimpose a transparency of the secondary output over the primary output. In this way, display of the secondary output does not generate new windows or otherwise interfere with the graphical user interface displaying the data from the primary application program with which the user is interacting.